package com.agileboot.domain.examrecord.db;

import com.agileboot.common.core.page.PageDTO;
import com.agileboot.domain.examrecord.query.ExamRecordQuery;
import com.agileboot.domain.examrecord.vo.ExamRecordInfoVO;
import com.agileboot.domain.examrecord.vo.ExamRecordVO;
import com.baomidou.mybatisplus.extension.service.IService;


import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * @author lx
 * @implNote 2022/2/26
 */
public interface ExamRecordService extends IService<ExamRecord> {

    PageDTO<ExamRecord> getUserGrade(String username, Integer examId, Integer pageNo, Integer pageSize);

    void createExamCertificate(HttpServletResponse response, String examName, Integer examRecordId);

    ExamRecord getExamRecordById(Integer recordId);

    Integer addExamRecord(ExamRecord examRecord, HttpServletRequest request);

    PageDTO<ExamRecord> getExamRecord(Integer examId, Integer pageNo, Integer pageSize);

    void setObjectQuestionScore(Integer totalScore, Integer examRecordId);

    PageDTO<ExamRecordVO> getRecordExam(ExamRecordQuery query);

    List<ExamRecordInfoVO> getRecordExamDetail(Integer id);
}
